Systems and methods for providing financial service extensions

ABSTRACT

Systems and methods are provided for providing financial service extensions. In one implementation, a financial cloud system including a memory storing instructions and a processor configured to execute the instructions is provided. The instructions may be executed to perform a process associated with providing the financial service extensions. The process may include providing a platform application to a client device. The process may also include receiving data associated with a financial service extension to be used in connection with the platform application. The process may further include receiving configuration data associated with the financial service extension. The process may additionally include configuring, by the processor, the financial service extension for use with the platform application. The process may also include providing, by the processor, the financial service extension to the client device.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of priority of U.S. ProvisionalApplication No. 61/722,939, filed Nov. 6, 2012, U.S. ProvisionalApplication No. 61/722,626, filed Nov. 5, 2012, and U.S. ProvisionalApplication No. 61/722,930, filed Nov. 6, 2012, the disclosures of whichare expressly incorporated herein by reference in their entirety.

The present application also relates to U.S. Patent Application No.entitled “Cloud-Based Systems and Methods for Providing ConsumerFinancial Data,” filed Nov. 5, 2013, Attorney Docket No.11360.0539-00000, which is expressly incorporated herein by reference inits entirety.

BACKGROUND I. Technical Field

The present disclosure generally relates to financial serviceextensions. In particular, the present disclosure relates to systems andmethods for providing financial service extensions to a cloud-basedplatform.

II. Background Information

Many consumers use mobile devices (such as tablets and smartphones) toaccess their banking and financial information. Consumers may download abanking or other financial service application to their mobile device toaccess various features offered by the financial service provider. Thefinancial service application may be downloaded from a mobile softwaredistribution platform, such as the Apple iTunes App Store and theAndroid Play Marketplace store. Alternatively, consumers can use webapplications delivered over HTTPS, which use either server-side orclient-side processing to provide a banking experience within a browseron mobile devices.

Consumers may expect financial service applications to Include variousfeatures such as account balances, recent transactions, account-relatedalerts, bill-payments, intra-account transfers, branch look-up services,and ATM location services. However, it may be technologically andfinancially burdensome for financial institutions to offer these andother services within one banking application. Using currently availablebanking systems and methods, financial institutions have to undertakesignificant development efforts to provide these and other applicationfeatures and services in a manner that is compatible with variousapplications across multiple computing platforms.

Therefore, there is a need for improved systems and methods thatovercome these problems associated with providing a financial serviceapplication.

SUMMARY

Consistent with a disclosed embodiment, a financial cloud system isprovided for providing financial service extensions. The system includesa memory storing instructions and a processor configured to execute theinstructions. The instructions may be executed to perform a processassociated with providing the financial service extensions. The processmay include providing a platform application to a client device. Theprocess may also include receiving data associated with a financialservice extension to be used in connection with the platformapplication. The process may further include receiving configurationdata associated with the financial service extension. The process mayadditionally include configuring, by the processor, the financialservice extension for use with the platform application. The process mayalso include providing, by the processor, the financial serviceextension to the client device.

Consistent with another disclosed embodiment, a mobile device isprovided. The mobile device includes a memory storing instructions and aprocessor configured to execute the instructions to perform a process toprovide financial service extensions. The process may include receivingdata associated with a platform application. The process may alsoinclude storing, in the memory, the data associated with the platformapplication. The process may further include receiving data associatedwith a plurality of financial service extensions to be used inconnection with the platform application. The process may additionallyinclude providing the plurality of financial service extensions for usewith the platform application.

Consistent with other disclosed embodiments, a non-transitorycomputer-readable storage media may store program instructions, whichare executed by a processor and perform any of the methods describedherein.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory onlyand are not restrictive of the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this disclosure, illustrate various disclosed embodiments. Inthe drawings:

FIG. 1 is an example of a system for providing an extension to aplatform application, consistent with disclosed embodiments;

FIG. 2 is an example of a cloud platform that may be used in conjunctionwith the system of FIG. 1, consistent with disclosed embodiments;

FIG. 3 is an example of a memory that may be used in conjunction withthe cloud platform of FIG. 2, consistent with disclosed embodiments;

FIG. 4 is an example of a mobile device that may be used in conjunctionwith the system of FIG. 1, consistent with disclosed embodiments;

FIGS. 5A and 5B illustrate examples of user interfaces of an exemplaryplatform application, consistent with disclosed embodiments;

FIG. 6 is a flowchart of an example of a process for providing anextension to a platform application, consistent with disclosedembodiments;

FIG. 7 is a flowchart of an example of an extension configurationprocess, consistent with disclosed embodiments;

FIG. 8 is a flowchart of an example of a process for updating anextension; consistent with disclosed embodiments;

FIG. 9 is a flowchart of an example of a process for completing aservice request associated with an extension, consistent with disclosedembodiments;

FIG. 10 is a flowchart of an example of a service request processingprocess, consistent with disclosed embodiments;

FIG. 11 is a flowchart of another example of a process for providing anextension to a platform application;

FIGS. 12-16 are examples of user interfaces for a platform applicationusing financial service extensions

FIGS. 17-20 are examples of user interfaces associated with a customerservice extension for a platform application; and

FIG. 21 is a flowchart of an example of a process for providing andusing a customer service extension.

DETAILED DESCRIPTION

The following detailed description refers to the accompanying drawings.Wherever possible, the same reference numbers are used in the drawingsand the following description to refer to the same or similar parts.While several illustrative embodiments are described herein,modifications, adaptations and other implementations are possible. Forexample, substitutions, additions or modifications may be made to thecomponents illustrated in the drawings, and the illustrative methodsdescribed herein may be modified by substituting, reordering, removing,or adding steps to the disclosed methods. Accordingly, the followingdetailed description is not limiting of the disclosed embodiments.Instead, the proper scope is defined by the appended claims.

Disclosed embodiments provide systems and methods for providingfinancial service extensions. The financial service extensions may bebuilt and provided in connection with a cloud-based platform configuredto deploy the financial service extensions to a mobile device. A usermay access the financial service extensions through an existing mobileapplication configured to load the extensions. The financial serviceextensions may be provided and removed from the existing mobileapplication in a “plug-and-play” manner to allow for configuration andcustomization of the mobile application according to the choice of anentity providing the mobile application and/or preferences of the user.

Disclosed embodiments provide extensible mobile financial servicesystems and methods that enable service providers to allow one or morethird-parties to provide content, services, and offers to consumers viaa financial service extension. The mobile financial systems may furtherallow for a secure point of entry for third party content, services, andoffers via the cloud-based platform, such as a mobile bankingapplication provided by a financial institution. In this way, thirdparty services may be integrated into a financial institution system toallow consumers to use third party services through a commonapplication.

FIG. 1 is an example of a system 100 for providing financial servicesover a secure network infrastructure, consistent with a disclosedembodiment. System 100 may be configured to perform one or more softwareprocesses that, when executed, provide one or more aspects of thedisclosed embodiments. The components and arrangement shown in FIG. 1 isnot intended to be limiting to the disclosed embodiment as thecomponents used to implement the processes and features disclosed heremay vary.

In accordance with a disclosed embodiment, system 100 includes a cloudplatform 101, a banking system 102, a third party service provider 103,and a mobile device 106 configured to communicate over a network, whichmay include network 104 and wireless carrier network 105. For example,mobile device 106 may communicate over wireless carrier network 105, andmay also communicate over network 104 (e.g., via a Wi-Fi connection).Other components known to one of ordinary skill in the art may beincluded in system 100 to process, transmit, provide, and receiveinformation consistent with the disclosed embodiments. For example, inaddition to or in place of mobile device 106, one or more other clientdevices (e.g., desktop computer, laptop computer, etc.) may be includedto communicate with the components of system 100.

Cloud platform 101 may be a computer-based system including computersystem components, such as one or more servers, desktop computers,workstations, tablets, hand held computing devices, memory devices,and/or internal network(s) connecting the components. In one embodiment,cloud platform 101 may be a server that includes one or moreprocessor(s), memory devices, and interface components configured toprovide a cloud-based service. As used in this disclosure, services,processes, or applications that are “cloud-based” refer to scalable,distributed execution of one or more software processes over a networkusing real or virtual server hardware. Cloud platform 101 may be asingle server or a distributed computer system including multipleservers or computers that interoperate to perform one or more of theprocesses and functionalities associated with the disclosed embodiments.

In some embodiments, cloud platform 101 may be a server that isassociated with a financial institution. The financial institution maybe, for example, a bank, lender, merchant, credit card provider, or anyother entity that provides financial accounts to customers. Thefinancial institution may manage cloud platform 101 such that cloudplatform 101 may be used to perform financial services. In someembodiments, the financial institution may be the same institution thatis associated with banking system 102. In other embodiments, thefinancial institution may be a different institution than thatassociated with banking system 102. In alterative embodiments, cloudplatform 101 may be hosted and managed by an entity other than afinancial institution, such as a network service provider, internetservice provider, telecommunications firm, etc. These entities mayexecute business agreements with financial institutions enabling them tomanage financial data via cloud platform 101.

Banking system 102 may be a computer-based system associated with afinancial institution, such as a bank, credit union, credit card issuer,or other type of financial service entity that generates, provides,manages, and/or maintains financial service accounts. Financial serviceaccounts may include, for example, credit card accounts, checkingaccounts, savings accounts, loan accounts, reward accounts, and anyother types of financial service account. Financial service accounts maybe associated with electronic accounts, such as a digital wallet orsimilar account that may be used to perform electronic transactions,such as purchasing goods and/or services online. Financial serviceaccounts may also be associated with physical financial service accountcards, such as a credit or check card that a user may carry on theirperson and use to perform financial service transactions, such aspurchasing goods and/or services at a point of sale (POS) terminal.Banking system 102 may include infrastructure and components that areconfigured to generate and provide financial service accounts andfinancial service account cards (e.g., credit cards, check cards, etc.).Banking system 102 may also include infrastructures and components thatare configured to store financial data associated with the financialservice accounts.

In embodiments in which cloud platform 101 is also associated with afinancial institution, banking system 102 may be associated with thesame or a different financial institution. In certain embodiments inwhich cloud platform 101 and banking system 102 are associated with thesame financial institution, cloud platform 101 may be an integratedcomponent of banking system 102. For example, banking system 102 may bean overall computing system associated with a financial institution,with cloud platform 101 being a component thereof.

Third party service provider 103 may be a computer-based systemassociated with a third party. For example, third party service provider103 may be associated with a merchant configured to provide one or moreservices to consumers. Third party service provider 103 may include oneor more computing systems that are configured to performcomputer-implemented processes, such as a server, desktop, laptop,mobile device, etc.

Banking system 102 and third party service provider 103 may beconfigured to communicate with cloud platform 101 via network 104.Network 104 may be any type of network that provides communications,exchanges information, and/or facilitates the exchange of informationbetween cloud platform 101 and other components of system 100, such asbanking system 102, third party service provider 103, and/or mobiledevice 106. In one embodiment, network 104 may be the Internet, or anyother suitable connection(s) that enables system 100 to send and receiveinformation between the components of system 100. In other embodiments,one or more components of system 100 may communicate directly through adedicated communication link(s) (not shown), such as a link betweencloud platform 101 and banking system 102.

In some embodiments, cloud platform 101 may communicate with bankingsystem 102 and/or third party service provider 103 through one or moreapplication programming interfaces (APIs). The one or more APIs may beconfigured to allow for the transmission and receipt of data betweencomponents, according to one or more processes associated with theprovision of a particular service. For example, a peer-to-peer (P2P)transfer API between cloud platform 101 and third party service provider103 may allow for sharing and processing of particular data associatedwith completion of a P2P transfer, such as a transfer of money from oneconsumer's account to another consumer's account.

Mobile device 106 may be a client device in the form of one or moremobile, computer-based systems. For example, mobile device 106 may be atablet or smartphone. In alternative embodiments, another client device,such as a desktop, laptop computer, server, point of sale device, kiosk,ATM, or the like, may be included in system 100 in place of or inaddition to mobile device 106 and perform some or all of the functionsof mobile device 106. In an exemplary embodiment, mobile device 106 maybe associated with a consumer that maintains one or more financialaccounts with a financial institution associated with cloud platform101, banking system 102, and/or third party service provider 103.

In an exemplary embodiment, mobile device 106 may be a device thatreceives, stores, and/or executes mobile applications. Mobile device 106may be configured with storage that stores one or more operating systemsthat perform known operating system functions when executed by one ormore processors, such as one or more software processes configured to beexecuted to run a mobile application.

Mobile device 106 may also include communication software that, whenexecuted by a processor, provides communications with network 104 andwireless carrier network 105, such as Web browser software, tablet orsmart hand held device networking software, etc. In some embodiments,mobile device 106 may be configured to communicate with banking system102 and/or third party service provider 103 via network 104 and/orwireless carrier network 105. In these embodiments, banking system 102and/or third party service provider 103 may be authorized to execute oneor more software processes on mobile device 106 via network 104 and/orwireless carrier network 105, such as a mobile application or a webapplet. Wireless carrier network 105 may be a data service networkconfigured to provide communications, exchange information, and/orfacilitate the exchange of information between components of system 100.It should be understood, however, that wireless carrier network 105 maybe any network configured to perform these functions. In certainembodiments, wireless carrier network 105 and network 104 may be thesame or otherwise related networks.

In an exemplary embodiment, system 100 may use infrastructures andcomponents, such as banking system 102 and third party service provider103 and integrate them into cloud platform 101, which becomes a point ofentry, and facilitates the integration of banking and third partyservices such that they are made available to mobile device 106 throughcommunication with cloud platform 101.

FIG. 2 further depicts cloud platform 101. Cloud platform 101 mayinclude a cloud server 201. Cloud server 201 may include one or morememories 202, one or more databases 203, one or more processors 204, andone or more interfaces 205. Cloud server 201 may take the form of ageneral purpose computer, a mainframe computer, a mobile computingdevice, or any combination of these components. According to someembodiments, cloud server 201 may include a web server or similarcomputing device that generates, maintains, and provides one or more websites or similar services, consistent with disclosed embodiments. Cloudserver 201 may be standalone, or it may be part of a subsystem, whichmay be part of a larger system. For example, cloud server 201 mayrepresent distributed servers that are remotely located and communicateover a network (e.g., network 104) or a dedicated network, such as aLAN. In some embodiments, one or more of banking system 102, third partyservice provider 103, and mobile device 106 may include the componentsand/or configuration of cloud platform 101 and/or cloud server 201. Itshould be understood that the illustrated system architecture describedherein associated with cloud platform 101 is presented as a non-limitingexample only, and that any other system configuration operable toperform the disclosed embodiments is possible.

Memory 202 may include one or more storage devices configured to storeinstructions used by processor 204 to perform functions related todisclosed embodiments. For example, memory 202 may be configured withone or more software instructions that may perform one or moreoperations when executed by processor 204. The disclosed embodiments arenot limited to separate programs or computers configured to performdedicated tasks. For example, memory 202 may include a single programthat performs the functions of server 201 or a program could comprisemultiple programs. Additionally, processor 204 may execute one or moreprograms located remotely from cloud server 201. For example, bankingsystem 102, third party service provider 103, and/or mobile device 106may, via cloud server 201, access one or more remote programs that, whenexecuted, perform functions related to certain disclosed embodiments.Memory 202 may also store data that may reflect any type of informationin any format that the system may use to perform operations consistentwith the disclosed embodiments.

Cloud server 201 may be communicatively connected to database(s) 203(e.g., via network 104) or database 203 may be an integrated componentof cloud platform 101 and/or cloud server 201. Database 203 may includeone or more memory devices that store information and are accessedand/or managed through cloud server 201. By way of example, database(s)203 may include Oracle™ databases, Sybase™ databases, or otherrelational databases or non-relational databases, such as Hadoopsequence files, HBase, or Cassandra. The databases or other files mayinclude, for example, data and information related to the source anddestination of a network request, the data contained in the request,etc. Database 203 may include computing components (e.g., databasemanagement system, database server, etc.) configured to receive andprocess requests for data stored in memory devices of database(s) 203and to provide data from database(s) 203.

Processor(s) 204 may include one or more known processing devices, suchas a microprocessor from the Pentium™ or Xeon™ family manufactured byIntel^(T)m, the Turion™ family manufactured by AMD™, or any of variousprocessors manufactured by Sun Microsystems. The disclosed embodimentsare not limited to any type of processor(s) configured in cloud server201.

Interfaces 205 may be one or more devices configured to allow data to bereceived and/or transmitted by cloud server 201. Interfaces 205 mayinclude one or more digital and/or analog communication devices thatallow cloud server 201 to communicate with other machines and devices,such as other components of system 100.

FIG. 3 depicts memory 202 of cloud server 201. In one embodiment, memory202 may include at least one financial cloud service 301, at least onefinancial cloud controller 302, and at least one financial cloud library303. Each financial cloud service 301, financial cloud controller 302,and financial cloud library 303 may be a program including softwareinstructions configured to perform one or more processes when executedby processor 204.

Financial cloud service(s) 301 may be configured to facilitatecommunication between cloud server 201 and one or more of banking system102, third party service provider 103, and mobile device 106. Afterreceiving a request from one of these components, cloud server 201 maydetermine which financial cloud service 301 may be associated with theparticular request. For example, cloud server 201 may receive a requestfor account Information from mobile device 106, which cloud server 201may route to the appropriate financial cloud service 301 (i.e., afinancial cloud service 301 associated with retrieving accountinformation). In another example, cloud server 201 may receive a requestto process a third party service (e.g., a P2P transfer), which cloudserver 201 may route to a financial cloud service 301 configured togather data from the request and communicate with the appropriate thirdparty service provider 103 (e.g., via an API) to complete the request.

Financial cloud controller 302 may be configured to provide a layer ofsecurity to cloud service 201. Financial cloud controller 302 mayinclude software that, when executed by processor 204, performs one ormore security processes. The one or more security processes may beconfigured to authorize requests routed through financial cloud service301. For example, financial cloud controller 302 may include a tokenauthorization process configured to authenticate a data request beforeprocessing the request. If financial cloud controller 302 determinesthat a request is not authorized (e.g., a token is not received orcannot be authenticated), a service request (e.g., a request for accountinformation) may be denied.

Financial cloud library 303 may be one or more components configured tostore data locally on cloud server 201. For example, financial cloudlibrary 303 may store consumer account information, such as financialaccount information. The financial account information may be receivedfrom banking system 102 and authorized to be stored locally. In thisway, financial cloud library 303 may allow financial account informationto be readily available within cloud server 201.

In one example, financial cloud service 301 may be used to respond to arequest from mobile device 106 for financial account information (e.g.,account number, account balance, recent transactions, etc.). Financialcloud service 301 may make a request to an appropriate financial cloudlibrary 303 for the financial account information. Financial cloudcontroller 302 may determine if the financial cloud service 301 isauthorized to receive the account information, and if so, transfer theaccount information from financial cloud library 303 to financial cloudservice 301 for eventual transmission to mobile device 106.

FIG. 4 depicts mobile device 106. Mobile device 106 may include at leastone memory 401, at least one processor 404, at least one interface 405,and at least one hardware input 409. Memory 401 may include a platformapplication 402 and a mobile operating system 403. Mobile operatingsystem 403 may be configured to cause processor 404 to executeinstructions to perform various processes associated with use of mobiledevice 106. For example, mobile operating system 403 may be configuredto cause mobile device 106 (e.g., processor 404) to run one or moreprograms, such as a mobile application and/or web browser. Exemplaryclient operating systems 403 may include Apple iOS and Android operatingsystems. In an exemplary embodiment, processor 404 may executeinstructions from mobile operating system 403 to run platformapplication 402. While depicted and described as mobile device 106 itshould be understood that, in alternative embodiments, mobile device 106may be another client device, such as a laptop or desktop computer,server, point of sale device, kiosk, ATM, or the like.

Interface 405 may include one or more devices configured to allow datato be received and/or transmitted by mobile device 106. For example,interface 405 may include a user interface, such as a display,configured to present data to a user. Interface 405 may also include aninput device, such as a keyboard or touchscreen, configured to receiveinput data from a user. Interface 405 may also include a componentconfigured to connect mobile device 106 to mobile carrier network 105.

In an exemplary embodiment, platform application 402 may be a web-basedmobile application configured to be used in connection with cloudplatform 101. It should be understood, however, that platformapplication 402 is not necessarily a mobile application, and could beinstead by another web-based service, such as a web page available onmobile device 106 or another client device, such as a laptop or desktopcomputer. In any instance, platform application 402 may originate fromcloud platform 101 and cloud server 201 and be provided to mobile device106 (e.g., downloaded over wireless carrier network 105).

In an exemplary embodiment, platform application 402 may be configuredas a financial Institution (e.g., banking) application. Platformapplication 402 may be configured to provide financial services to aconsumer via hosting of one or more extensions 406. Extensions 406 mayinclude one or more programs configured to be executed by processor 404to make one or more services available within platform application 402.Extensions 406 may be pluggable software components configured to beloaded for use within platform application 402. For example, extensions406 may be “plug-and-play” services that may be deployed over the air(e.g., via wireless carrier network 105) and accessed via platformapplication 402 with immediate availability. In this way, extensions 406may be provided to mobile device 106 and platform application 402 inreal-time, without updating of the platform application 402. Similarly,extensions 406 may be removed or deactivated (i.e., unplugged) such thatthey are no longer accessible via platform application 402.

Extensions 406 may include application extensions 407 and advertisementextensions 408. Application extensions 407 may be associated with one ormore services that may be integrated into platform application 402 andmade available to a consumer associated with mobile device 106. Eachapplication extension 407 may be an application or other softwareservice configured to run within platform application 402 and configuredto communicate with cloud server 201 (e.g., via a mobile device-cloudAPI). Cloud server 201 may be configured to receive requests fromapplication extension 407, and to process those requests, in conjunctionwith banking system 102 and/or third party service provider 103, ifnecessary.

In an exemplary embodiment, each application extension 407 may beassociated with a financial service. For example, application extensions407 may include applications associated with P2P payments and/or giftcard purchase services. Advertisement extensions 408 may be programsthat, when executed by processor 404, are configured to provide one ormore advertisements, offers, or other content to mobile device 106. Aswith application extensions 407, advertisement extensions 408 may beconfigured to run within platform application 402. In this way,applications, advertisements, offers, and other content may be providedto a user of mobile device 106 within a single mobile application.

In some embodiments, application extensions 407 and advertisementextensions 408 may be configured to communicate with one or morehardware inputs 409. Hardware inputs 409 may include components ofmobile device 106 configured to provide particular data. For example,hardware input 409 may include a GPS device configured to provide alocation of mobile device 106 to an application extension 407 oradvertisement extension 408 as input data. In this way, particularizeduse of an extension 406 may be possible, such as to provide a relevantfinancial service (e.g., map of nearby branch locations) or relevantadvertisement (e.g., associated with nearby merchants).

Platform application 402 may be provided with any combination and amountof extensions 406, including application extensions 407, advertisementextensions 408, and/or any other type of extensions 406. The extensions406 may be configured by cloud platform 101 and selectively deployed tomobile device 106 for access via platform application 402.Identification of the extensions 406 that are to be deployed andplugged-in to platform application 402 may be determined by an entitythat provides platform application 402 (e.g., a financial institution),a user (e.g., the consumer), and/or a third party.

FIGS. 5A and 5B depict examples of display configurations of mobiledevice 106 associated with platform application 402 and extensions 406.Each mobile device 106 may include a user interface 501 configured to bedisplayed to a user by a display device (e.g., a touchscreen). Userinterfaces 501 may include a plurality of extensible regions 502 withina navigation interface. Extensible regions 502 may be containers withinthe platform application 402 in which extensions 406 may be presentedand executed. Extensible regions 502 may include Icon regions 503 andtile regions 504. Additional extensible regions 505 may be caused to bedisplayed after selection of an icon region 503 and/or tile region 504.Extensible regions 505 may also include icon regions 503 and/or tileregions 504 that may be selected for further iterations andfunctionality of extensions 406.

As shown in FIG. 5A, one or more icon regions 503 may be displayed in anavigation region of the user interface 501 (e.g., across the top of thedisplay). Each icon region 503 may display one or more iconsrepresenting a discrete application extension 407. If an icon/iconregion 503 is selected, the associated application extension 407 may beopened. For example, instructions associated with the applicationextension 407 may be executed, causing the user interface 501 to change,and the application extension 407 to be displayed in another extensibleregion 505 (e.g., a full-screen extensible region), as indicated by thearrows in FIG. 5A.

In addition or alternatively, one or more tile regions 504 may displayan application extension 407. Tile regions 504 may display theapplication extension 407 within the tile region 504 throughout use ofthe extension 406, and/or may cause user interface 501 to change todisplay another extensible region 505, as shown in FIG. 5A.

As shown in FIG. 5B, extensible regions 502 may include one or more tileregions 504 displayed in any portion of a user interface 501. Each tileregion 504 may be configured to display an advertisement extension 408to provide an advertisement, offer, or other content to the consumer. Ifa tile region 504 is selected, the associated advertisement, offer, orother content may cause processor 404 to execute software instructionsto provide an appropriate response to the selection. For example,selection of a tile region 504 containing an advertisement extension 408may result in the launching of a web browsing session, solicitation ofcustomer contact information, or display of a video for consumption bythe consumer.

The arrangement of extensible regions 502 within the user interface 501of the platform application 402 may be determined by an entityassociated with cloud platform 101. Further, the entity may determinewhich application extensions 407 and advertisement extensions 408 toprovide to platform application 402. In the embodiments in which cloudplatform 101 and cloud server 201 are associated with a financialinstitution, each extensible region 502, 505 of the platform application402 may be configured to provide a particular financial service (e.g.,via an application extension 407) and/or a particular financialadvertisement (e.g., via an advertisement extension 408). In this way,platform application 402 may be a financial service applicationconfigured to provide various financial services, advertisements,offers, and other content through the financial institution and anyassociated banking systems 102 and/or third party service providers 103.The financial institution may customize the financial serviceapplication through selection of the application extensions 407 andadvertisement extensions 408 to be made available in the extensibleregions 502, 505 of a user interface 501 associated with platformapplication 402.

FIG. 6 is flowchart of a process 600 for providing an extension 406 to aplatform application 402, consistent with disclosed embodiments. Incertain embodiments, cloud server 201 may execute software instructionsto perform process 600 to provide one or more extensions 406 to platformapplication 402. In one embodiment, platform application 402 may beinstalled on mobile device 106 prior to provision of one or more ofextensions 406. However, it should be understood that platformapplication 402 and one or more of extensions 406 may be provided tomobile device 106 at substantially the same time (e.g., platformapplication 402 downloaded and installed with one or more of extensions406 pre-loaded and available).

Cloud server 201 may receive data identifying one or more of extensions406 to be provided to a platform application 402 (step 610). Thereceived data may include an indication of selection a particular one ormore of extensions 406 by a user. For example, a user associated with afinancial institution may select one of extensions 406 to be availablethrough a platform application 402 associated with the financialinstitution, and input data to identify the extension 406. The selectedextension 406 may be an application extension 407 configured to providea third party service through a particular third party service provider103 (e.g., P2P transfers) or an advertisement extension 408 configuredto provide an advertisement, offer, or other content (e.g., a savingsdeal associated with a merchant). The received data may Identify theparticular type of extension 406.

Cloud server 201 may also receive data identifying the platformapplication(s) 402 that may receive the identified extension 406 (step620). For example, a selected extension 406 may be intended to beprovided to a platform application 402 associated with a particularfinancial institution. The received data may identify the platformapplication(s) associated with that financial institution. Further, thereceived data may identify platform applications 402 associated withparticular users or categories of users. For example, one of extensions406 may be intended to be provided to users enrolled in a particularrewards program, users in a particular area, users of a particular age,etc. Server 201 may receive data and execute software instructions todetermine a set of platform applications 402 (and/or mobile devices 106)to be provided with the extension 406. For example, a financial cloudservice 301 may generate a request to search a financial cloud library303 for particular users associated with the received identifyinginformation.

Cloud server 201 may also receive data associated with providing theextension 406 to a selected platform application 402 (step 630). Thedata associated with providing the extension 406 may include dataconfigured to initialize the platform application extension 406 for usewith the components of system 100. For example, cloud server 201 mayreceive a financial cloud service 301 associated with the extension 406and configured to manage performance of processes associated with theextension 406. In another example, cloud server 201 may receive dataidentifying one or more existing financial cloud services 301 configuredto manage extension 406.

The received initialization data may also include informationidentifying a banking system 102 and/or third party service provider 103associated with the extension 406. The data may include communicationchannels that may be used to transmit data between the identifiedbanking system 102 and/or third party service provider 103 and cloudserver 201. For example, the initialization data may identify aparticular banking system API or third party service API that may beused to perform processes associated with the extension 406. Cloudserver 201 may receive and store software instructions that, whenexecuted, allow for communication via the identified API. Theinstructions may be stored as part of a financial cloud service 301associated with the extension 406.

In certain aspects, the received data associated with providing theextension 406 may be programs and protocol configured to allow theextension 406 to function when called upon (e.g., used) by a user. Inaddition to setting up the appropriate functionality, cloud server 201may also configure the extension 406 for use within the platformapplication 402 (step 640). For example, cloud server 201 may receiveconfiguration data from one or more sources (e.g., users). Theconfiguration data may include software instructions configured to matchthe extension 406 to a particular aspect of mobile device 106 and/orplatform application 402. For example, configuration data may includedisplay data, including a particular extensible region 502 to receive anicon 503 or tile 505 for presentation of the extension 406, as well asan extensible region 505 for display of the extension 406 afterselection by a user of mobile device 106. The configuration data mayalso include information specific to mobile device 106, such as displayDPI, display height and width, extensible region height and width, modelof mobile device 106, mobile operating system 403, and user-identifyinginformation. The configuration data may allow for appropriatepresentation and use of the extension 406 with the platform application402.

Based on the received initialization data (step 630) and configurationdata (step 640), cloud server 201 may provide the extension 406 to theplatform application 402 (step 650). This may be done by cloud server201 receiving (e.g., from a user) or transmitting (e.g., to mobiledevice 106) an enabling instruction configured to allow for thecommunication of data associated with the extension 406 across system100. For example, cloud server 201 may provide configuration data tomobile device 106, which may execute software instructions to displaythe extension 406 within platform application 402. Mobile device 106 maystore these and additional instructions configured to providefunctionality to the extension 406 such that it may be used by aconsumer. Similarly, communication between cloud server 201 and bankingsystem 102 and/or financial service provide 103 may be enabled.

FIG. 7 is a flowchart of a configuration process associated withconfiguration of one of extensions 406 for a platform application 402.The configuration process may be an embodiment of step 640 of process600. As described above, the configuration process may allow forintegration of an extension 406 within platform application 402,including the manner in which the extension 406 may be presented to aconsumer.

To perform to the exemplary configuration process, cloud server 201 mayreceive configuration data (step 710). The configuration data may beprovided based at least in part on a selection by a user. For example,the configuration of the platform application and extension 406 may bechosen by an entity associated with cloud server 201 (e.g., a financialinstitution). The data configuration may allow the entity to provide theextension 406 to a consumer in a customized manner. For example, theconfiguration data may include the enabling of an extension 406 in favorof another extension 406 that was previously available. In anotherexample, the configuration data may include other customization aspects,such as what to display to a user (e.g., a user interface). In otherembodiments, the configuration data may be received from mobile device106 after being input by a consumer-user of mobile device 106. Forexample, the consumer may choose which extensions 406 the consumer wantsto be available within platform application 402, which may betransmitted and received by cloud server 201 as configuration data.

As has been described, the configuration data may include dataassociated with the integration of the extension 406 into platformapplication 402. Based on the received configuration data, cloud server201 may determine an extensible region 502 and/or 505 of the platformapplication 403 for containing the extension 406 (step 720).

In one embodiment, the extension 406 may be an application extension407. The configuration data may include an extensible region 502 fordisplay of an icon within associated with the application extension 407(e.g., an icon region 503). The extensible region 502 may be associatedwith instructions such that when extensible region 502 is selected by auser, the application extension 407 may be caused to run within anotherextensible region, such as an extensible region 505 (e.g., full-screen).In another example, the configuration data may include an extensibleregion 502 as a tile region 504 for display of the application extension407.

In another example, the extension 406 may be an advertisement extension408. The configuration data may include a tile region 504 as anextensible region 502 for display of the advertisement extension 408, aswell as a particular result process to be performed if the tile region504 is selected (e.g., redirect mobile device 106 to a web pageassociated with the advertisement extension 408).

The configuration data may also include an indication of whether theextension 406 replaces another extension 406, which may be determined bycloud server 201 (step 730). For example, a particular extensible region502, such as a tile region 504 of a navigation screen, may be configuredto display and run one extension 406. In order to customize the platformapplication, the extension 406 associated with that particular tileregion 504 may be switched with other extensions 406. In such aninstance, the configuration data may include an instruction todeactivate another extension 406 (step 740). Deactivation of anotherextension 406 may include execution of software instructions to removethe extension 406 from the extensible region 502, which may includeremoval of all data associated with the extension 406, an instruction toprevent display of the extension 406, or some other deactivationprocess.

The configuration data may additionally or alternatively include anindication of whether a navigation feature is to be included in anextensible region 502 (step 750). For example, the configuration datamay include an indication of an icon region 503 to be used for displayof an icon associated with the extension 406. If such a feature is to beincluded, the configuration data may include instructions for adding thefeature to an appropriate icon region 503 (step 760). It should beunderstood that the configuration data may also include an indicationthat an existing feature in an icon region 503 may be replaced by thefeature of the extension 406 being configured for the platformapplication 402. In such an instance, the feature and extension 406being replaced may be deactivated or configured for movement to anotherextensible region 502. Further, it should be understood that otherfeatures, which may not necessarily be navigation features, may be addedto an extensible region 502 using the same or similar processing.

The configuration process depicted in FIG. 7 may allow one or more ofextensions 406 to be prepared for deployment to platform application402. The configuration process may also allow for on-the-flycustomization of a platform application 402, since existing extensions406 may be deactivated in favor of a different extension 406. In thisway, particular services associated with application extensions 407 andadvertisements and/or offers associated with advertisement extensions408 may be changed as desired. It should be understood, however, thatthe configuration process depicted in FIG. 7 is an example and thatother processes and/or other steps may be included in configuring anextension 406.

In addition to providing one or more of extensions 406 to a platformapplication 402, cloud sever 201 may be configured to update anextension 406. FIG. 8 is a flowchart of a process 800 for updating anextension 406, consistent with disclosed embodiments. In certainembodiments, cloud server 201 may execute software instructions toperform processes associated with updating one or more of extensions406. In some aspects, the updating processes may be configured to modifyan extension 406 already deployed to platform application 402. In thisway, the extension 406 may be changed without being replaced by anotherextension 406, further allowing for customization of platformapplication 402.

To perform an extension update, cloud server 201 may receiveconfiguration data associated with the update (step 810). Theconfiguration data may include instructions for updating a particularaspect of an extension 406. For example, the update may includemodifying application extension 407 to provide an additionalfunctionality or modifying an advertisement extension 408 to provide anew offer or different content. In some embodiments, the configurationdata may include data input by a consumer using mobile device 106. Forexample, a consumer may choose which features of a particular extension406 that they want to be available and mobile device 106 may transmitthe received preferences to cloud server 201 as configuration data.

To update the application platform extension 406, cloud server 201 mayinterpret the configuration data to identify the extension 406 to beupdated (step 820). In this way, cloud server 201 may also determine theappropriate platform applications 402 and/or mobile devices 106 to whichto provide the update. For example, the configuration data may indicatethat a particular extension 406 for platform applications 402 associatedwith a particular financial institution should receive the update. Inother embodiments, the configuration data may apply only to a particularextension 406 associated with one consumer's mobile device 106 andplatform application 402, based on their received preferences.

After the extension 406 to be modified is identified, cloud server 201may perform one or more processes to update the extension 406 (step830). Cloud server 201 may transmit configuration data to mobile device106, such as over wireless carrier network 105. Mobile device 106 may beconfigured to receive the configuration data related to the update andexecute software instructions to perform one or more processes toimplement the update.

Through processes 600 and 800, cloud server 201 may integrate extension406 into a platform application 402 to allow for a customizableapplication that includes various service applications andadvertisements. In some embodiments, the platform application 402 andextensions 406 may be associated with providing a customizable financialservices application.

FIG. 9 is a flowchart of a process 900 for processing a financialservice request from extension 406, consistent with disclosedembodiments. In certain embodiments, cloud server 201 may executesoftware instructions to perform one or more processes associated withprocessing the financial service request.

Cloud server 201 may receive a service request associated with extension406 from mobile device 106 (step 910). As described above, the servicerequest may be a financial service request. In one embodiment, theservice request may be associated with a request for a P2P transfer ofmoney.

Cloud server 201 may further be configured to process the servicerequest (step 920). In order to process the service request, cloudserver 201 may determine a financial cloud service 301 associated withthe particular extension 406 and/or service request. The financial cloudservice 301 may execute software instructions to perform appropriateprocesses configured to process the service request. For example,financial cloud service 301 may receive the service request from theextension 406 and may facilitate communication with other components ofcloud server 201 (e.g., financial cloud controller 302 and financialcloud library 303), banking system 102, and/or third party serviceprovider 103.

To further process the service request, cloud server 201 may determinewhether to initiate communications with a service provider, such asbanking system 102 and/or third party service provider 103 (step 930).For example, in the embodiment in which the service request isassociated with a third party P2P transfer service, cloud server 201 maycommunicate with a third party P2P transfer service provide to completea transaction (e.g., transfer of money) associated with the servicerequest.

If cloud server 201 makes a determination to contact a service provider,cloud server 201 may transmit data to the service provider, such as overnetwork 104 (step 940). The appropriate financial cloud service 301 maybe programmed to gather the data to be sent the service provider so thatthe service provider may be able to complete the service request. Forexample, the financial cloud service 301 may be configured to gatheraccount information (e.g., identification of financial account,financial account details) and service request information (e.g., amountof transfer) and transmit associated data to the service provider.

After receiving the data and locally processing the request, the serviceprovider (e.g., third party service provider 103) may transmit a dataresponse, which may be received by cloud server 201 (step 950). Afterreceiving the response, or if communication with a service provider wasnot performed, cloud server 201 may determine a result of the servicerequest (step 960). For example, cloud server 201 may determine if theservice request was successful, unsuccessful, incomplete, approved,denied, etc. Cloud server 201 may execute additional instructions todetermine whether to perform further processing or whether the processmay be terminated.

In one embodiment, cloud server 201 may provide the determined result tomobile device 106 using the extension 406 associated with the servicerequest (step 970). The result may include the result of the servicerequest (e.g., completed, denied, etc.) and/or a request for additionalinformation from the consumer and/or mobile device 106 to furtherprocessing of the request.

FIG. 10 is a flowchart of a process for processing a received servicerequest (e.g., step 920). As described above, processing of the servicerequest may be performed using one or more financial cloud services 301.Financial cloud service 301 may receive the service request anddetermine which data may be necessary for completion of the servicerequest (step 1010). For example, financial cloud service 301 maydetermine that a service request for a P2P transfer requires amountinformation from mobile device 106 and account information from afinancial cloud library 303. Financial cloud service 301 may proceed togather the data.

Financial cloud service 301 may gather the data received with theservice request from mobile device 106 (step 1020). For example,financial cloud service 301 may identify an amount of a P2P transfer.Financial cloud service 301 may proceed to determine if additional datafor the service request is stored in cloud platform 101 (e.g., cloudserver 201) (step 1030). If there is additional data stored in the cloudplatform (e.g., financial account information), financial cloud service301 may generate a request for the data (step 1040).

In one embodiment, a request for data may be generated by a cloud server201 via a financial cloud service 301. The request may be processedusing financial cloud controller 302. Financial cloud controller 302 mayperform one or more security processes to approve or deny the requestfor data (step 1050). If the request is denied (e.g., not authorized orauthenticated), financial cloud controller may generate an error, whichmay be transmitted back to mobile device 106 via financial cloud service301 (step 1060). If the request is approved, financial cloud controller302 may perform one or more processes to receive the data (step 1070).For example, financial cloud controller 302 may communicate with afinancial cloud library 303, which may supply the requested data.

As a result of this process, financial cloud service 301 may havegathered data from mobile device 106 and cloud platform 101 forcompleting the service request. Financial cloud service 301 may continueto process the service request by transmitting a result to the mobiledevice 106 (e.g., to complete a service request for account information)or by performing further processing via communication with a serviceprovider (e.g., to complete a P2P transfer request).

The processes depicted in FIGS. 9 and 10 may allow for a consumer to useextension 406 of a platform application 402 to perform one or moreservices (e.g., financial services) through the facilitation of cloudplatform 101. Cloud platform 101 may be configured to store financialaccount information that may be used to complete requested services,such as financial account information received from banking system 102and/or as a result of integration with banking system 102. The storedconsumer financial account information may allow for secure integrationof financial services through the platform application 402.

Cloud platform 101 may be configured to complete service requests bytransmitting financial account information to service providers (e.g.,third party service provider 103) from a secure networked infrastructureso that a consumer may access a variety of services, and initiatetransactions directly from a platform application 402 associated with afinancial institution. In this way, cloud platform 101 may use theconsumer's accounts associated with the financial institution as afunding mechanism by which third party services, offers, and/or contentare purchased or redeemed by the consumer.

Examples of financial services that may be provided via platformapplication 402 by way of one or more of extensions 406 include theability of a consumer to view a list of financial institution accounts(e.g., checking, savings, credit card, mortgage, etc.), the ability toview the balance of any particular account, initiation of a fundtransfer, initiation of a P2P fund transfer, purchase of gift cards,initiation of other types of mobile payment transactions, offer andcoupon redemption, viewing of stock quotes, purchasing of stocks,credit/FICA score tracking, receipt/spending tracking, and the like.

FIG. 11 is a flowchart of a process 1100 that may be performed by mobiledevice 106, consistent with disclosed embodiments. Mobile device 106 mayexecute instructions to perform process 1100 to receive, use, modify,and/or otherwise interact with platform application 402 and/or one ormore of extensions 406.

In certain embodiments, mobile device 106 may receive and store platformapplication 402 (step 1110). The platform application 402 may beconfigured to be executed by processor 404 to display one or more userinterfaces 501 that include one or more extensible regions 502, 505.

Mobile device 106 may receive data associated with extension 406 to beused in conjunction with platform application 402 (step 1120). The dataassociated with the extension 406 may include configuration data. Mobiledevice 106 may interpret the configuration data to determine the mannerin which to integrate the extension 406 into the platform application402. For example, the configuration data may include an extensibleregion 502 in which the extension 406 may be provided. The extensibleregion 502 may include identification of one or more icon regions 503 ina navigation menu or a tile regions 504 to which to provide theextension 406 or an aspect of the extension 406.

Mobile device 106 may proceed to display the platform application to theconsumer, with the extension 406 presented in the appropriate extensibleregions 502 (step 1130). In some embodiments, mobile device 106 may beconfigured such that a user may use an interface 405 of mobile device106 to select, modify, and/or otherwise use each extension 406 displayedin an extensible region 502. In this way, the consumer may be allowed tointeract with the platform application 402 and the displayed extensions406.

Mobile device 106 may receive a user request from the consumer (step1140). The user request may be one of several types of requests, such asrequests to perform a service associated with extension 406, a requestto change platform application 402 and/or extension 406, etc. In oneexample, the request may be associated with a financial service offeredby one of the extension 406. The user may select the extension 406 usingan interface 405 and associated data may be received by mobile device106. The requested financial service may be to view financial accountinformation, perform a banking service (e.g., intra-account fundtransfer), perform a third party service (e.g., purchase a gift card),etc. In another example, the request may be a request to add, remove,replace, or modify extension 406. For example, the user may seek tocustomize the extensions 406 associated wither platform application 402.

In either instance, mobile device 106 may transmit data associated withthe user request to cloud server 201 (step 1150). Cloud server 201 mayperform one or more processes to complete the request. For example,cloud server 201 may obtain account information, communicate with thirdparty service provider 103 to complete a financial service, or performone or more processes to accommodate the user request for modificationof the available extension 406.

After cloud server 201 processes the request, mobile device 106 mayreceive a result of the request (step 1160). The result may be requestedinformation, confirmation of a completed financial service, a requestfor additional information, modification of extension 406, etc. Theresult may be displayed to the consumer (step 1170) via an interface405.

FIGS. 12-16 show examples of user interfaces 501 that may berepresentative of a platform application 402 and extension 406. Inparticular, FIGS. 12-16 show user interfaces 501 associated with afinancial institution platform application and financial serviceextensions.

FIG. 12 shows an example of user interface 501 associated with anaccount dashboard 1200. Account dashboard 1200 may be an exemplary “homescreen” of the financial institution platform application 402. Accountdashboard 1200 may include a navigation bar 1201 including a pluralityof extensible regions 1202 in the form of icon regions 1203, which mayeach include a selectable icon. Icons that may be included in theplurality of icon regions include, for example, icons associated with“INFO/HELP,” “LOCATIONS,” “BILL PAY,” “TRANSFERS,” and/or “DASHBOARD,”functions. Each icon may be associated with a separate financial serviceextension. For example, the “TRANSFERS” icon may be associated with afinancial service extension in which customers may initiate a transferof money, such as from one financial account to another financialaccount, or to initiate another type of mobile payment transfer, such asa P2P payment transfer through a third party service provider 103.

Navigation bar 1201 may be configured to be extensible such thatadditional icons representing one or more financial service extensionsmay be added and such that existing icons may be removed. Each iconregion 1203 may be configured such that selection of the icon and/oricon region 1203 may result in initialization of an associated financialservice extension, which may be caused to be displayed in anotherextensible region, such as a full-screen region. In this way, financialinstitution and/or third party service information may be displayed tothe consumer such that the consumer may use the financial serviceextension to receive information or further request a financial service.

Account dashboard 1200 may also include additional extensible regions1202 in the form of tile regions 1204. Each tile region 1204 may beconfigured as a financial service extension, which may be an applicationextension 407 or an advertisement extension 408. Each financial serviceextension may be integrated into the user interface 501 of accountdashboard 1200. Further, each tile region 1204 may be configured toprovide and display information, such as financial data specific to aparticular user's financial account, such as a checking account, savingsaccount, or credit card account. In an embodiment, one or more tileregions 1204 may be configured to display checking account informationwhile another tile region 1204 may be configured to display savingsaccount information.

Further, within a given tile region 1204, account specific information,such as amount of interest earned, recent financial activity ortransactions, available balance, etc., may be provided. Tile regions1204 can be further configured to provide data represented as charts,graphs, or any other visual representations of data.

FIG. 13 shows an example of a user interface 1300. User interface 1300may include a plurality of extensible regions 1302 in the form of iconregions 1303 and tile regions 1304. Icon regions 1303 may serve asnavigation components configured to direct mobile device 106 to executeinstructions to perform a process, such as open a financial serviceextension different from the financial service extension currently beingused and/or shown. Each tile region 1304 may include separate financialservice extensions that may be used by the consumer, or may be relatedcomponents of the same financial service extension. One or more of thetile regions 1304 may include a financial service extension associatedwith a third party service provider. The third party financial serviceextensions may be operably coupled to the associated third party serviceprovider 103 through cloud server 201.

The third party financial service extensions may be configured toprovide any type of third party content (e.g., advertisements, offers,product purchases, P2P services, etc.). In this way, the financialinstitution associated with the platform application may be allowed toprovide new features and functionality to the platform applicationthrough integration of third party services.

User interface 1300 may further include account details, includingdetailed account transaction information. Each tile region 1304 mayfurther Include selectable regions 1306 that can be configured torespond to user input and trigger another extensible region 1302 (e.g.,another tile region 1304) to be presented in association with theselection.

FIG. 14 shows an example of a user interface 1400 displaying accountdetails displayed based on a selection of a transaction in userinterface 1300. User interface 1400 may include extensible regions 1402in the form of icon regions 1403 (which may correspond to an serve thesame purpose as icon regions 1303 of user interface 1300) and tileregions 1404. At least one of tile regions 1404 depicts a merchant offertile incorporated into an account transaction detail tile. Selection ofthe merchant offer tile may cause mobile device 106 to executeinstructions to perform a process associated with the merchant offer,such as display additional details regarding the merchant offer, open amerchant web page on mobile device 106, etc.

In one embodiment, data associated with the transaction detail (e.g.,metadata) can be analyzed and correlated to a particular third partyfinancial service application to provide a targeted consumer offer thatrelates to the presented transaction. In this way, financial serviceextensions may be further used in conjunction with each other to providean integrated financial service experience.

FIG. 15 illustrates an example of a user interface 1500 depicting a billpayment extension. Extensible regions 1502 may include icon regions 1403(which may correspond to icon regions 1303 and 1403) and tile regions1504. Tile regions 1504 may be configured to provide a bill paymentfunction to the consumer. In some embodiments, the bill paymentextension may be a third party financial service extension, in whichpayment to a third party is made via cloud server 201.

FIG. 16 illustrates an example of a user interface 1600 depicting anexemplary P2P money transfer extension. The consumer may use the P2Pmoney transfer extension to access a third party service provider 103for transferring money to another person, for example. The P2P moneytransfer extension may be displayed in an extensible region 1602 in theform of a full-screen tile 1605. The user may interact with the P2Pmoney transfer extension to input data related to a money transfer.Mobile device 106 may transmit data associated with the money transferto cloud server 201 for processing of the money transfer, includingfurther transmission of data to a third party service provider 103associated with providing P2P transfer services. As shown in FIG. 16,user interface 1600 may further include extensible regions 1602 in theform of icon regions 1603, which may be the same as or similar to iconregions 1203, 1303, 1403, and 1503.

The examples of financial service extensions depicted in FIGS. 12-16generally relate to viewing financial account information and performingfinancial transactions associated with the financial accounts. It shouldbe understood, however, that financial service extensions may includeother types of services, which may or may not be directly related to afinancial institution. For example, in one embodiment, a customerservice extension may be provided for use with a platform application402, which may be installed on mobile device 106. The user of mobiledevice 106 may use the customer service extension to contact a customerservice center. FIGS. 17-21 depict exemplary systems and methods thatmay be associated with a customer service extension.

FIG. 17 shows an example user interface 1700 displayed on mobile device106. User interface 1700 may be associated with one or more financialservice extensions. User interface 1700 depicts a menu 1710. Menu 1710may include options that a user may select, including options related toproducts and services provided by a company, such as a financialinstitution. Menu 1710 includes “Account Information” item 1720,“Promotions” item 1730, and “Customer Services” item 1740. Each item inmenu 1710 may be associated with a different financial serviceextension. For example, when the user selects item 1720 for accountinformation, an account information extension may be initiated and userinterface 1700 may display another user interface (not shown) showingaccount information associated with an account of the user. The accountinformation may include various information including, for example,options for viewing information associated with different accounts,account balances, transaction history, and user preference settings.

When the user selects item 1730 for promotions, a promotions extensionmay be initiated and user interface 1700 may display another userinterface (not shown) showing promotions to the user. Promotions mayinclude any suitable promotions for products or services, such as thosedescribed with respect to advertisement extensions 408. Promotions shownto the user may be standard promotions or customized promotions.Customized promotions may be customized based on the user's age,education, income, or other existing account Information, the user'sinterests, or the user's historical contact with customer servicecenter.

FIG. 18 illustrates an example of user interface 1700 of mobile device106 that depicts a menu 1810 associated with a customer serviceextension. Mobile device 106 may display menu 1810 when the user selects“Customer Services” item 1740 in FIG. 17, which may initiate thecustomer service extension. Menu 1810 may display a list of selectableitems. The items may include, for example, a first item 1820 forcustomer services for checking and savings accounts, a second item 1830for customer services for credit cards, a third item 1840 for customerservices for online banking technical support, a fourth item 1850 forcustomer services for mortgage and home equity, a fifth item 1860 forcustomer services for small business banking, and a sixth item 1870 forCDs and IRAs.

FIG. 19 shows an example of a menu 1910 displayed on user interface 1700when the customer selects the first item 1810 for customer service forchecking and savings accounts. Menu 1910 may display a list of customerservice topics for the customer to select. The customer service topicsmay include, for example, a first topic 1920, “I noticed unauthorizedcharges in my account,” a second topic 1930, “I received a call from acollection agency,” a third topic 1940, “I was denied a loan,” a fourthtopic 1890, “I received a bill for an account I never opened,” a fifthtopic 1960, “I stopped receiving credit card bills,” and a sixth topic1970, “Quick Connect to a representative.” When the customer selects thesixth topic 1970, the customer will be connected to a representativeusing a default communication option, such as chat, call, or video,which the customer may set in the settings in the user's account or asettings portion related to customer services. For example, when theuser selects item 1740 for customer services, user interface 1700 maydisplay a user interface for the user to set the default communicationoption for contacting a customer service representative.

FIG. 20 shows an example of a menu 2010 displayed on user interface 1700when the user selects any one of the customer service topics 1920-1960shown in FIG. 19. Menu 2010 may display a message 2020 prompting theuser to select a communication option for contacting a customer servicerepresentative. For example, menu 2010 may display a plurality ofcommunication options for the customer to select. In some embodiments,each communication option may be associated with a different customerservice extension.

As shown in FIG. 20, menu 2010 may display a chat icon 2030 representingcontacting a customer service representative through an online chatfunction. While the online chat function may be associated with acustomer service extension, it should be understood that the online chatfunction may be an integrated component of platform application 402(e.g., not provided as an extension 406) or mobile device 106 (e.g., aseparate mobile application). The online chat function may also use anonline chat application provided by a third party, which may be providedas a third party extension through cloud server 201. When the customerselects chat icon 2030, platform application 402 may start the thirdparty online chat extension or an integrated online chat functionassociated with platform application 402.

Referring to FIG. 20, menu 2010 may display a call icon 2040representing contacting a customer service representative through atelephone, such as a telephone function of mobile device 106. When thecustomer selects call icon 2040, platform application 402 may start acall function of mobile device 106, or may display a message requestingthe customer to call a customer service phone number using anotherphone.

Referring to FIG. 20, menu 2010 may also display a video chat icon 2050representing contacting a customer service representative using a videochat function. The video chat function may be an extension 406, acomponent of platform application 402, or a separate mobile applicationon mobile device 106. The video chat function may be associated with athird party video chat application, either through mobile device 106 orthrough cloud server 201 via a third party extension. When the customerselects video chat icon 2050, platform application 402 may start thecorresponding video chat function or application.

Referring to FIGS. 19 and 20, when the customer selects one of thecommunication methods discussed above, or when the customer selects item1970 for quick connection to a customer service representative, mobiledevice 106 may send a request to connect to a customer service center.Mobile device 106 may also transmit context information to the customerservice center. The context information may be transmitted substantiallysimultaneously when the customer selects either quick connection item1970 or any one of the communication options displayed in FIG. 20. Thecustomer service center may forward the context information to aterminal (e.g., a computer, tablet, smartphone, etc.) being used by acustomer service representative to help the customer servicerepresentative understand the issues of the customer. The contextinformation may include various information that platform application402 or an associated extension 406 may record regarding the user'sinteraction with platform application 402 and/or extension 406. Forexample, the context information may Include the user's name, address,and account information such as account type, balance, transactionhistory, etc. The context information may also include historyInformation related to the user's interactions with platform application402 and/or extension 406, such as the user's selection of one of thecustomer service topics 1920-1960, or the user's selections of the firstitem 1820 and then subsequently, the item 1940. For example, platformapplication 402 may record a chain of selections made by the user atdifferent levels of extensions.

FIG. 21 shows an example of a process 2100 that mobile device 106 mayperform using platform application 402 and one or more customer serviceextensions. Process 2100 may represent at least a portion of theoperations performed by a customer service extension, depending on theconfiguration of platform application 402.

Mobile device 106 may receive a user selection of customer services froma first level category (step 2120). The first level category may be, forexample, menu 1710 shown in FIG. 17, which may include “CustomerServices” item 1740. The user may select “Customer Services” item 1740.In some embodiments, selection of item 1740 may initiate the customerservice extension.

Next, mobile device 106 may display a first user interface correspondingto customer services (step 2120). For example, after the user selects“Customer Services” item 1740, mobile device 106 may display menu 1810,as shown in FIG. 18. Mobile device 106 may receive a user selection ofan account type for customer services from a second level category (step2130). For example, the user may select first item 1820 from the secondlevel category shown in FIG. 18, which includes items 1820-1870.

Next, mobile device 106 may receive a user selection of a customerservice topic (step 2140). For example, after the user selects item 1820from the second level category in FIG. 18, the user may select the firstcustomer service topic 1920 from a third level category, which mayinclude topics 1920-1970 shown in FIG. 19. Mobile device 106 may furtherreceive user selection of a communication option for contacting acustomer service representative (step 2150). For example, the user mayselect chat icon 2030 from FIG. 20. Mobile device 106 may then connectto a customer service center through the user selected communicationoption (step 2160). Mobile device 106 may use the customer serviceextension to connect to a customer service center associated with afinancial institution and/or a third party. The connection may be madevia communication with cloud server 201 and one or more third partyservice providers 103.

Next, mobile device 106 may transmit context information to the customerservice center (step 2170). The context information may be transmittedsubstantially simultaneously with the connection to the customer servicecenter via cloud server 201. The customer service center may make thecontext information available to a customer representative so that thecustomer representative can understand the question or issue that theuser has, without requiring the user to repeat the question or issue theuser has. For example, the customer service center may forward thecontext information to a terminal (e.g., a computer, tablet, smartphone,etc.) being used by a customer service representative to help thecustomer service representative understand the issues of the customer.This may result in more efficient and higher quality customer services.After step 2170, the process may end.

A user may control mobile device 106 to execute instructions to performprocess 2100 to use a customer service extension associated withplatform application 402. In this way, the user may communicate with acustomer service center through cloud server 201, which may allow forthe convenient use of account information stored in cloud server 201.Further, the integration of the customer service extension into platformapplication 402 may allow for additional information, such as contextinformation associated with use of platform application 402 or otherextensions 406, to be supplied to a customer service center for use inaddressing customer requests and issues.

The foregoing description has been presented for purposes ofillustration. It is not exhaustive and is not limited to the preciseforms or embodiments disclosed. Modifications and adaptations will beapparent to those skilled in the art from consideration of thespecification and practice of the disclosed embodiments. For example,the described implementations include software, but systems and methodsconsistent with the disclosed embodiments be implemented as acombination of hardware and software or in hardware alone. Examples ofhardware include computing or processing systems, including personalcomputers, servers, laptops, mainframes, micro-processors and the like.Additionally, although aspects of the disclosed embodiments aredescribed as being stored in memory, one skilled in the art willappreciate that these aspects can also be stored on other types ofcomputer readable media, such as secondary storage devices, for example,hard disks, floppy disks, or CD ROM, or other forms of RAM or ROM, USBmedia, DVD, or other optical drive media.

Computer programs based on the written description and disclosed methodsare within the skill of an experienced developer. The various programsor program modules can be created using any of the techniques known toone skilled in the art or can be designed in connection with existingsoftware. For example, program sections or program modules can bedesigned in or by means of .Net Framework, .Net Compact Framework (andrelated languages, such as Visual Basic, C, etc.), Java, C++,Objective-C, HTML, HTML/AJAX combinations, XML, or HTML with includedJava applets. One or more of such software sections or modules can beintegrated into a computer system or existing e-mail or browsersoftware.

Moreover, while illustrative embodiments have been described herein, thescope of any and all embodiments having equivalent elements,modifications, omissions, combinations (e.g., of aspects across variousembodiments), adaptations and/or alterations as would be appreciated bythose skilled in the art based on the present disclosure. Thelimitations in the claims are to be interpreted broadly based on thelanguage employed in the claims and not limited to examples described inthe present specification or during the prosecution of the application.The examples are to be construed as non-exclusive. Furthermore, thesteps of the disclosed routines may be modified in any manner, includingby reordering steps and/or inserting or deleting steps. It is intended,therefore, that the specification and examples be considered asillustrative only, with a true scope and spirit being indicated by thefollowing claims and their full scope of equivalents.

1-23. (canceled)
 24. A method for interacting with a platformapplication performed at a mobile device, the method comprising:receiving data associated with an extension from a remote device,including configuration data; determining, based on interpreting theconfiguration data, an integration of the extension into the platformapplication; and displaying, based on the determined integration and atthe mobile device, the platform application and the extension, whereinthe displayed extension is configured to receive a user input.
 25. Themethod of claim 24, the method further comprising: receiving theplatform application at the mobile device; and storing the platformapplication at the mobile device.
 26. The method of claim 25, whereinthe configuration data includes an extensible region in the platformapplication in which the extension is to be provided.
 27. The method ofclaim 26, wherein the extensible region comprises an icon region or anavigation region.
 28. The method of claim 27, wherein the extensibleregion comprises an icon region having multiple icons, wherein each iconrepresents a financial service extension and is configured to initializethe display of an associated financial service extension in afull-screen region.
 29. The method of claim 26, wherein the user inputis received at an interface of the mobile device.
 30. The method ofclaim 29 further comprising: receiving a modification request at theinterface to modify the extension; and modifying the extension based onthe modification request.
 31. The method of claim 29 further comprising:receiving a request at the interface to perform a service associatedwith the extension; and transmitting, to a server connected to a serviceprovider device across a secure networked infrastructure, and inresponse to the received request, data associated with the request. 32.The method of claim 29, wherein the received request is a request toview financial account information, perform an intra-account fundtransfer, or perform a third-party service.
 33. The method of claim 32further comprising: receiving, in response to the transmitted data, aresult of the received request; and displaying the result at theinterface.
 34. A mobile device for processing a service requestassociated with an extension, the mobile device comprising: a storagedevice that stores a set of instructions; and at least one processorthat executes the set of instructions, the set of instructionsconfiguring the at least one processor to: receive data associated withan extension from a remote device, including configuration data;determine, based on interpreting the configuration data, an integrationof the extension into the platform application; and display, based onthe determined integration and at the mobile device, the platformapplication and the extension, wherein the displayed extension isconfigured to receive a user input.
 35. The mobile device of claim 34,wherein the set of instructions further configure the at least oneprocessor to: receive the platform application at the mobile device; andstore the platform application at the mobile device.
 36. The mobiledevice of claim 35, wherein the configuration data includes anextensible region in the platform application in which the extension isto be provided.
 37. The mobile device of claim 36, wherein theextensible region comprises an icon region or a navigation region. 38.The mobile device of claim 37, wherein the extensible region comprisesan icon region having multiple icons, wherein each icon represents afinancial service extension and is configured to initialize the displayof an associated financial service extension in a full-screen region.39. The mobile device of claim 36, wherein the set of instructionsfurther configure the at least one processor to: receiving amodification request at an interface of the mobile device to modify theextension; and modifying the extension based on the modificationrequest.
 40. The mobile device of claim 36, wherein the set ofinstructions further configure the at least one processor to: receivinga request at an interface of the mobile device to perform a serviceassociated with the extension; and transmitting, over a secure networkedinfrastructure and in response to the received request, data associatedwith the request.
 41. The mobile device of claim 36, wherein thereceived request is a request to view financial account information,perform an intra-account fund transfer, or perform a third-partyservice.
 42. The mobile device of claim 41, wherein the set ofinstructions further configure the at least one processor to: receiving,in response to the transmitted data, a result of the received request;and displaying the result at the interface.
 43. A tangible,non-transitory computer-readable storage device for processing a servicerequest associated with an extension, the storage device including a setof instructions that, when executed, cause at least one processor to:receive data associated with an extension from a mobile devicecomprising including configuration data including an extensible regionin the platform application in which the extension is to be provided;determine, based on interpreting the configuration data, an integrationof the extension into the platform application; display, based on thedetermined integration and at the mobile device, the platformapplication and the extension, wherein the displayed extension isconfigured to receive a user input; receiving a request at an interfaceof the mobile device to perform a service associated with the extension;and transmitting, over a secure networked infrastructure and in responseto the received request, data associated with the request.